﻿class Program1234
{
    struct A : ICloneable
    {
        public Int32 x;
        public override String ToString()
        {
            return string.Format("{0}", x);
        }
        public object Clone()
        {
            return MemberwiseClone();
        }
    }
    static void main1123()
    {
        A a;
        a.x = 100;
        Console.WriteLine(a.ToString());
        Console.WriteLine(a.GetType());
        A a2 = (A)a.Clone();
        ICloneable c = a2;

        object o = c.Clone();

    }
}
